home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / program / gemxx19.zoo / gem++19 / include / gempa.h < prev    next >
C/C++ Source or Header  |  1993-10-09  |  2KB  |  67 lines

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. //  GEMpanarea
  4. //
  5. //  A GEMpanarea is an abstract sliding window.
  6. //
  7. //  This file is Copyright 1992 by Warwick W. Allison,
  8. //  This file is part of the gem++ library.
  9. //  You are free to copy and modify these sources, provided you acknowledge
  10. //  the origin by retaining this notice, and adhere to the conditions
  11. //  described in the file COPYING.LIB.
  12. //
  13. /////////////////////////////////////////////////////////////////////////////
  14.  
  15.  
  16. #ifndef GEMpa_h
  17. #define GEMpa_h
  18.  
  19.  
  20. class GEMpanarea
  21. {
  22. public:
  23.     GEMpanarea();
  24.     GEMpanarea(int visiblelines, int totallines, int visiblecolumns, int totalcolumns);
  25.  
  26.     virtual void SetVisibleLines(int noOfLines);
  27.     virtual void SetTotalLines(int noOfLines);
  28.     virtual void SetTopLine(int noOfLine);
  29.     virtual void SetVisibleColumns(int noOfColumns);
  30.     virtual void SetTotalColumns(int noOfColumns);
  31.     virtual void SetLeftColumn(int noOfColumn);
  32.  
  33.     int TotalLines() { return totalLines; }
  34.     int TotalColumns() { return totalColumns; }
  35.  
  36.     int VisibleLines() { return visibleLines; }
  37.     int VisibleColumns() { return visibleColumns; }
  38.  
  39.     int TopLine() { return actualTopLine; }
  40.     int LeftColumn() { return actualLeftColumn; }
  41.  
  42.     void LineUp();
  43.     void LineDown();
  44.     void PageUp();
  45.     void PageDown();
  46.     virtual int VPageAmount();
  47.     virtual int VLineAmount();
  48.     
  49.     void ColumnLeft();
  50.     void ColumnRight();
  51.     void PageLeft();
  52.     void PageRight();
  53.     virtual int HPageAmount();
  54.     virtual int HColumnAmount();
  55.  
  56.     void VGetScaledValue(int scale, int& size, int& position);
  57.     void HGetScaledValue(int scale, int& size, int& position);
  58.  
  59. private:
  60.     int actualTopLine,actualLeftColumn;
  61.     int visibleLines,visibleColumns;
  62.     int totalLines,totalColumns;
  63. };
  64.  
  65.  
  66. #endif
  67.